package secondStage.part6.Lambda表达式.练习2;

/**
 * @ClassName: [FlyableDemo]
 * @Description: Lambda练习
 * @Author: [黄劲松]
 * @CreateDate: [2021-04-07]
 * @Version: [v1.0]
 */
/*Lambda表达式的格式: (形式参数) -> {代码块}
   练习2:
        1:定义一个接口(Flyable)，里面定义一 -个抽象方法: void fly(String s);
        2:定义一个测试类(FlyableDemo)，在测试类中提供两个方法
        一个方法是: useFlyable(Flyable f)
        一个方法是主方法，在主方法中调用useFlyable方法*/
public class FlyableDemo {
    public static void main(String[] args) {
        //匿名内部类方式
        useFlyable(new Flyable() {
            @Override
            public void fly(String s) {
                System.out.println(s);
                System.out.println("适合飞机自驾游");
            }
        });
        System.out.println("----Lambda表达式实现----");
        useFlyable((String s)->{
            System.out.println(s);
            System.out.println("适合飞机自驾游1");
        });
    }

    private static void useFlyable(Flyable f){
        f.fly("风和日丽，晴空万里");
    }
}
